package com.wanxi.tcp.demo3服务器对客户端进行回应;

import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStreamWriter;
import java.net.ServerSocket;
import java.net.Socket;

/**
 * TCP 服务端,演示ppt上的第一个练习，客户端连接成功后，向服务器发送一个Hello,服务器返回一个你谁啊。
 */
public class TCPServer {
    public static void main(String[] args) throws IOException {
        System.out.println("服务端启动.....");

        // 创建服务器端的监听端口服务
        ServerSocket serverSocket = new ServerSocket(30000);
        // 等待客户端访问
        Socket socket = serverSocket.accept();
        // 构建客户端输入流(对于客户端来说是要输出信息给服务器端)
        InputStream inputStream = socket.getInputStream();
        int content;
        while ((content = inputStream.read()) != -1) {
            System.out.println((char) content);
        }

        System.out.println("看看我执行了吗?");
        // 向客户端输出 你谁啊？
        BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
        bufferedWriter.write("你谁啊?");
        bufferedWriter.newLine();
        bufferedWriter.flush();

        // 关闭资源
        bufferedWriter.close();
        inputStream.close();
        socket.close();
        serverSocket.close();
    }
}
